home *** CD-ROM | disk | FTP | other *** search
/ Tech Arsenal 1 / Tech Arsenal (Arsenal Computer).ISO / tek-02 / tegl6b.zip / INTROPAK.EXE / lha / TEGLSPEC.DOC < prev    next >
Text File  |  1991-08-16  |  4KB  |  158 lines

  1. {-----------------------------------------------------------------------------}
  2. {               TEGL Windows ToolKit II                  }
  3. {          Copyright (C) 1990, 1991 TEGL Systems Corporation              }
  4. {                All Rights Reserved.                  }
  5. {-----------------------------------------------------------------------------}
  6. {$I switches.inc}
  7. {$V-}
  8.  
  9. Unit TEGLSpec;
  10.  
  11. INTERFACE
  12.  
  13. USES
  14.      errorlog,
  15.      FastGrph,            {xorbox}
  16.      Virtmem,
  17.      IPStacks,
  18.      TEGLIntr,            {required for mouse_Xcoord}
  19.      TEGLUnit;
  20.  
  21. TYPE
  22.    slidermsptr = ^slidermsrec;
  23.    slidermsrec = Record
  24.             nxtms       : slidermsptr;
  25.             ms           : msclickptr;
  26.          end;
  27.  
  28.    SliderPtr   = ^SliderRec;
  29.    SliderRec   = RECORD
  30.             fs           : ImageStkPtr;
  31.             ms1        : MsClickPtr;    {slider area}
  32.             ms2        : MsClickPtr;    {slider button/thumb}
  33.             relatedms       : slidermsptr;   {related ms for searching}
  34.             minX,maxX       : Word;
  35.             minY,maxY       : Word;
  36.             slidecallproc  : callproc;
  37.             pageA1callproc : callproc;
  38.             pageA2callproc : callproc;
  39.          END;
  40.  
  41. const
  42. {..BACKDG
  43. XXXXXXXX
  44. XFXXXX0
  45. XFXXX0
  46. XF0FXX0
  47. XX XFXX0   X
  48. X   XFXX0 XX
  49.      XFXX0F0
  50.       XFXXX0
  51.        XFXX0
  52.       XFXXX0
  53.      XXXXXXX
  54.  
  55.  
  56.  
  57.  
  58.  
  59. }
  60.    MaskBACKDG : Masktype =
  61.                 (($00FF,$01FF,$03FF,$01FF,$20EF,$704F,$F80F,$FC0F,
  62.                $FE0F,$FC0F,$F80F,$FFFF,$FFFF,$FFFF,$FFFF,$FFFF),
  63.  
  64.                  ($0000,$7C00,$7800,$5C00,$0E00,$0700,$03A0,$01E0,
  65.                $00E0,$01E0,$0000,$0000,$0000,$0000,$0000,$0000));
  66.  
  67. {..FORWDG
  68.     XXXXXXXX
  69.      XFXXXX0
  70.       XFXXX0
  71.      XFXX0F0
  72. X   XFXX0 XX
  73. XX XFXX0   X
  74. XF0FXX0
  75. XFXXX0
  76. XFXX0
  77. XFXXX0
  78. XXXXXXX
  79.  
  80.  
  81.  
  82.  
  83.  
  84. }
  85.    MaskFORWDG : Masktype =
  86.                 (($F00F,$F80F,$FC0F,$F80F,$704F,$20EF,$01FF,$03FF,
  87.                $07FF,$03FF,$01FF,$FFFF,$FFFF,$FFFF,$FFFF,$FFFF),
  88.  
  89.                  ($0000,$03E0,$01E0,$03A0,$0700,$0E00,$5C00,$7800,
  90.                $7000,$7800,$0000,$0000,$0000,$0000,$0000,$0000));
  91. {..VERTDG
  92.        XX
  93.       XFX0
  94.      XFXXX0
  95.     XFXXXXX0
  96.    XXXXFX0XXX
  97.       XFX0
  98.       XFX0
  99.       XFX0
  100.       XFX0
  101.       XFX0
  102.       XFX0
  103.    XXXXFX0XXX
  104.     XFXXXXX0
  105.      XFXXX0
  106.       XFX0
  107.        XX
  108. }
  109.    MaskVERTDG : Masktype =
  110.                 (($FE7F,$FC3F,$F81F,$F00F,$E007,$FC3F,$FC3F,$FC3F,
  111.                $FC3F,$FC3F,$FC3F,$E007,$F00F,$F81F,$FC3F,$FE7F),
  112.  
  113.                  ($0000,$0180,$03C0,$07E0,$0180,$0180,$0180,$0180,
  114.                $0180,$0180,$0180,$0180,$07E0,$03C0,$0180,$0000));
  115. {..HORZDG
  116.  
  117.     X       X
  118.    XX       XX
  119.   XF0       XF0
  120.  XFX0XXXXXXXFX0
  121. XFXXXXXXXXXXXXX0
  122. XFXXXXXXXXXXXXX0
  123.  XFX0XXXXXXXFX0
  124.   XF0       XF0
  125.    XX       XX
  126.     X       X
  127.  
  128.  
  129.  
  130.  
  131.  
  132. }
  133.    MaskHORZDG : Masktype =
  134.                 (($FFFF,$F7EF,$E7E7,$C7E3,$8001,$0000,$0000,$8001,
  135.                $C7E3,$E7E7,$F7EF,$FFFF,$FFFF,$FFFF,$FFFF,$FFFF),
  136.  
  137.                  ($0000,$0000,$0000,$1008,$300C,$7FFE,$7FFE,$300C,
  138.                $1008,$0000,$0000,$0000,$0000,$0000,$0000,$0000));
  139.  
  140. Function  SelectandResizeFrame(fs:ImageStkPtr; MouseClickPos: MsClickPtr) : Word;
  141. Procedure DefineResizeMinMax(fs:ImageStkPtr; minx,miny,maxx,maxy:Word);
  142. Procedure DefineResizeClickArea(fs:ImageStkPtr; x,y,x1,y1:Word; ResizeCallProc:callproc);
  143. procedure MoveSliderBar(Slptr:sliderptr; x,y:word);
  144. procedure SetSliderRelative(slptr:SliderPtr; XRange,XPos,YRange,YPos:longint);
  145. procedure GetSliderRelative(slptr:SliderPtr; XRange:longint; var XPos:longint; YRange:longint; var YPos:longint);
  146.  
  147. Procedure DropSliders(frame : ImageStkPtr);
  148. Function  SliderAction(fs:ImageStkPtr; MouseClickPos: MsClickPtr) : Word;
  149. Procedure AddSliderPageEvent(fs:ImageStkPtr; ms:msclickptr; SpageA1,SpageA2:callproc);
  150. Procedure DefineSliderArea(fs:ImageStkPtr; x,y,x1,y1,minx,miny,maxx,maxy:Word; SlideCallProc:callproc);
  151. Procedure SetSlidePosition(fs:ImageStkPtr; mxpos,mypos:Word);
  152. Procedure AddRelatedSliderMS(fs:ImageStkPtr; sliderms,ms:msclickptr);
  153. Function  FindSliderFS(frame:ImageStkPtr; MouseClickPos:MsClickPtr) : SliderPtr;
  154. Procedure disposeslider(frame:ImageStkPtr; dslptr : sliderptr);
  155. function  getlastsliderdef(fs:imagestkptr):sliderptr;
  156.  
  157. IMPLEMENTATION
  158.